package com.graduation.project.entity.po;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("task")
public class Task {

  /**
   * 主键id
   */
  @TableId(value = "id", type = IdType.AUTO)
  private Long id;

  /**
   * 课题名称
   */
  private String taskName;

  /**
   * 指导老师工号
   */
  private String adviserCode;

  /**
   * 申请人工号
   */
  private String proposerCode;

  /**
   * 申报方式
   */
  private String declareMethod;

  /**
   * 审核状态
   */
  private Integer auditStatus;

  /**
   * 课题来源
   */
  private Integer taskSource;

  /**
   * 课题类别
   */
  private Integer taskCategory;

  /**
   * 课题类型
   */
  private Integer taskType;

  /**
   * 是否需要实践
   */
  private Integer isPractice;

  /**
   * 简介及选择理由
   */
  private String chooseReason;

  /**
   * 条件要求
   */
  private String conditionRequire;

  /**
   * 特殊要求（针对学生）
   */
  private String specialRequire;

  /**
   * 论文研究方向
   */
  private String researchDirection;

  /**
   * 上传论文类型
   */
  private Integer uploadThesisType;

  /**
   * 删除标记
   */
  @TableLogic
  private Integer deleteFlag;

  /**
   * 创建时间
   */
  private Date createTime;

  /**
   * 修改时间
   */
  private Date updateTime;

  /**
   * 系主任审核状态（0：审核中，1：通过，2：未通过）
   */
  private Integer directorAuditStatus;

  /**
   * 副院长审核状态（0：审核中，1：通过，2：未通过）
   */
  private Integer subdecanalAuditStatus;

  /**
   * 系主任审核意见
   */
  private String directorAuditIdea;

  /**
   * 副院长审核意见
   */
  private String subdecanalAuditIdea;

  /**
   * 审核意见（教师）
   */
  private String auditIdea;
}
